package com.zkas.canalefectivo.datasyncro;


import java.util.ArrayList;
import java.util.HashMap;
import java.util.List;

public class Synchronizator {
	private DataStore dataStore;
	private DataSource dataSource;
	
	public Synchronizator (DataSource dataSource,DataStore dataStore)
	{
		this.dataSource = dataSource;
		this.dataStore = dataStore;
	}
	
	// obtiene datos del webservice
	// los guarda en base de datos confirmando pagos realizados.
	// retorna los datos obtenidos.
	public List<Bill> GetData(String user) {
		// obtiene los datos del webservice
		ArrayList<HashMap<String, String>> dataIn = this.dataSource.getBillsFromServer(user);
		// si se pudo conectar y los leyo, reemplaza.
		if (dataIn != null)
		{
			// los guarda en el celular, en la base de datos.
			this.dataStore.saveBills(dataIn);
		}
		List<Bill> allBills = this.dataStore.getAllBills();
		return allBills;
	}
	
}

